// packageA/pages/partsSend/partsSend.js
const app = getApp();
import CommonService from '../../../utils/service/commonService.js';
import Toast from '../../../miniprogram_npm/@vant/weapp/toast/toast';
const util = require('../../../utils/util');

Page({

  /**
   * 页面的初始数据
   */
  data: {
    //传参
    paramObj:{},
    //列表
    list:[],   
    //无数据
    showNothing:false,
    //登录用户
    user:null,
    //折叠面板
    activePart: null
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    this.setData({
      user: app.globalData.userInfo
    })
    
    if(options.paramObj){
      let paramObj=JSON.parse(options.paramObj);

      console.log('配件物流传参');
      console.log(paramObj);

      this.setData({
        paramObj: paramObj
      })

      //获取列表数据
      this.getList();  
    }  
  },

  //获取列表数据
  getList(){
    Toast.loading({
      duration: 0,
      forbidClick: true,
      message: '加载中...'
    });

    let param = {
      isAuth: false,
      className: 'partsPurchaseOrder',
      data: {
        id: this.data.paramObj.orderId,
        selectFields: ['id','logisticsParts']
      }
    }

    CommonService.goFindList(param).then(res => {
      Toast.clear();
      if(res.data.data && res.data.data.result && res.data.data.result.length) {
        let result=res.data.data.result[0];
        if(result.logisticsParts && result.logisticsParts.length){
          console.log('配件物流列表');
          console.log(result.logisticsParts);

          //发货时间
          result.logisticsParts.forEach(item => {
            if(item.deliverTime){
              item.deliverTime=util.timeFormat(item.deliverTime);
            }
          });          

          //排序
          result.logisticsParts.sort(this.compare('id',2));
  
          this.setData({
            list: result.logisticsParts
          })
        }else{
          this.setData({
            showNothing: true
          })
        }         

      }else{
        this.setData({
          showNothing: true
        })
      }
    }).catch((error) => {
      this.setData({
        showNothing: true
      })
    })
  },

  //刷新列表和页码
  refreshListAndPage(){
    this.setData({
      list: [],
      showNothing: false
    })

    //查询列表
    this.getList();  
  },

  //跳转添加
  goToAdd(){
    let obj={
      orderId: this.data.paramObj.orderId
    }

    wx.navigateTo({
      url: "/packageA/pages/partsSendAdd/partsSendAdd?paramObj="+JSON.stringify(obj)
    })
  },

  //切换配件折叠面板
  onChangePart(event) {
    this.setData({
      activePart: event.detail
    })
  },

  //对象数组排序
  compare(property,type){
    return function(a,b){
      let value1 = a[property];
      let value2 = b[property];

      //升序
      if(type==1){
        return value1 - value2;
      }

      //降序
      if(type==2){
        return value2 - value1;
      }   
    }
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {
    
  }
})